#ifndef ENTECH_ROBOT_H
#define ENTECH_ROBOT_H

#include "WPILib.h"
#include "RobotSubsystem.h"
#include "OperatorButton.h"
#include "EntechDriveSubsystem.h"
#include "ShooterSubsystem.h"
#include "ProngsSubsystem.h"
#include "RollerSubsystem.h"
//#include "PneumaticsTest.h"
//#include "ShooterTest.h"

class EntechRobot : public IterativeRobot
{
private:
	// Declare a variable to use to access the driver station object
	//DriverStation *m_ds;				// driver station object
	//DriverStationLCD *m_lcd;			// drivers station LCD display	
public:
	EntechRobot();
	
	virtual void RobotInit();
	virtual void AutonomousInit();
	virtual void TeleopInit();
	virtual void DisabledInit();
	virtual void AutonomousPeriodic();
	virtual void TeleopPeriodic();
	virtual void DisabledPeriodic();
	
private:
	Joystick *m_leftJoystick;
	Joystick *m_rightJoystick;
	
	Compressor *m_compressor;
	EntechDriveSubsystem *m_entechDrive;
	ShooterSubsystem *m_shooter;
	ProngsSubsystem *m_prongs;
	RollerSubsystem *m_roller;
	
	enum AutoState { kStart, kStep1, kStep2, kStep3, kStep4, kStep5, kDone };
	AutoState m_autoState;
	//PneumaticsTest *m_pneumaticsTest;
	//ShooterTest *m_shooterTest;
};
#endif
